home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 109 / EnigmaAmiga109CD.iso / dalla rivista / host contacted / imengv3.41p1.lha / ImEngV3.41p1 / ARexx / EdgeMerge.rexx < prev    next >
OS/2 REXX Batch file  |  1999-09-18  |  2KB  |  102 lines

  1. /*
  2. ** $VER: EdgeMerge 1.31, IE Arexx script
  3. ** Image Engineer Macro script
  4. ** Copyright © by Patrik M Nydensten
  5. ** 15/1 1997 Stockholm/Sweden
  6. **
  7. ** MS: Alphapicture now use zoomvalue of original picture
  8. **
  9. ** Merge image's top and left edges with bottom and right edges
  10. ** to form a seemless pattern image.
  11. */
  12.  
  13. Options results
  14. Signal On Error
  15.  
  16. NL = x2c(0a); SQ = x2c(27)
  17.  
  18. if arg()==0 then exit
  19. pic=arg(1)
  20.  
  21. PROJECT_INFO pic WIDTH
  22. IW=result
  23. PROJECT_INFO pic HEIGHT
  24. IH=result
  25. PROJECT_INFO pic ZOOM
  26. origzoomval=result
  27.  
  28.  
  29. 'FORM "Edge Merge" "Ok|Cancel"',
  30. ' TEXT,"Blends the image'SQ's edges to form a tileable image"',
  31. ' INTEGER,"X Amount",1,'trunc(IW/2)','trunc(IW/4)',SLIDER',
  32. ' INTEGER,"Y Amount",1,'trunc(IH/2)','trunc(IH/4)',SLIDER'
  33.  
  34. parse var result ok Xmerge Ymerge
  35. if ok = 0 then exit
  36.  
  37. /* Start the action */
  38.  
  39. 'OPEN' '"IE:Alpha/Gradient.alpha"' '8'
  40. LoadAlphaImage = Result
  41.  
  42. PROJECT_SET loadalphaimage ZOOM origzoomval
  43.  
  44. /* bottom */
  45. 'ROTATE' LoadAlphaImage 270 'BEST'
  46. RotAlphaImage = Result
  47.  
  48. 'SCALE' RotAlphaImage IW Ymerge 'BEST'
  49. AlphaImage = Result
  50. 'CLOSE' RotAlphaImage
  51.  
  52. 'MARK' AlphaImage 'ALPHA'
  53. 'MARK' pic 'PRIMARY'
  54. 'MARK' pic 'SECONDARY'
  55. 'COMPOSITE' 0 IH-Ymerge 'ALPHA'
  56. Newback = Result
  57. 'CLOSE' AlphaImage
  58.  
  59. /* right */
  60. 'REFLECT_X' LoadAlphaImage
  61. RotAlphaImage = Result
  62. 'CLOSE' LoadAlphaImage
  63.  
  64. 'SCALE' RotAlphaImage Xmerge IH 'BEST'
  65. AlphaImage = Result
  66. 'CLOSE' RotAlphaImage
  67.  
  68. 'MARK' AlphaImage 'ALPHA'
  69. 'MARK' Newback 'PRIMARY'
  70. 'MARK' Newback 'SECONDARY'
  71. 'COMPOSITE' IW-Xmerge 0 'ALPHA'
  72. Newback1 = Result
  73. 'CLOSE' Newback
  74. 'CLOSE' AlphaImage
  75.  
  76. 'CROP' NewBack1 Xmerge-1 Ymerge-1 IW-2 IH-2
  77. final=result
  78.  
  79. PROJECT_SET final ZOOM origzoomval
  80.  
  81. 'CLOSE' NewBack1
  82. exit
  83.  
  84. /*******************************************************************/
  85. /* This is where control goes when an error code is returned by IE */
  86. /* It puts up a message saying what happened and on which line     */
  87. /*******************************************************************/
  88.  
  89. error:
  90. if RC=5 then do
  91.     IE_TO_FRONT
  92.     LAST_ERROR
  93.     'REQUEST "'||RESULT||'"'
  94.     exit
  95. end
  96. else do
  97.     IE_TO_FRONT
  98.     LAST_ERROR
  99.     'REQUEST "Error detected!!!'||D2C(10)||'Image Engineer error message is as follows'||D2C(10)||result||D2C(10)||'Script failed on line '||SIGL||'"' ' OK '
  100.     exit
  101. end
  102.